#ifndef _ATTR_H__
#define _ATTR_H__

#include "gatts.h"
#include "esp_gatts_api.h"

/**
 * @brief 根据封装的service数据，设置服务说明attr
 * @param attr
 * @param s 封装的service数据，设置服务说明attr数据
 * @return void
 */
void set_service_declaration(esp_gatts_attr_db_t *attr,
			     struct gatts_service *s);

/**
 * @brief 根据封装的char数据，设置char说明attr
 * @param attr
 * @param s 封装的char数据
 * @return void
 */
void set_char_declaration(esp_gatts_attr_db_t *attr, struct gatts_char *c);

/**
 * @brief 根据封装的char数据，设置char值的attr
 * @param attr
 * @param s 封装的char数据
 * @return void
 */
void set_char_value(esp_gatts_attr_db_t *attr, struct gatts_char *c);

/**
 * @brief 根据封装的char数据，设置cccd的attr
 * @param attr
 * @param s 封装的char数据
 * @return void
 */
void set_cccd(esp_gatts_attr_db_t *attr, struct gatts_char *c);

/**
 * @brief 打印attr
 * @param attr
 * @return void
 */
void print_attr(const esp_gatts_attr_db_t *attr);

#endif